refactor: use kermit-io for file logging (WPB-26806) - #5231
Conversation
Test Results2 643 tests +22 2 643 ✅ +22 1m 41s ⏱️ +22s Results for commit 6c180d5. ± Comparison against base commit 007c1bb. This pull request removes 2 and adds 24 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
|
APKs built during tests are available here. Scroll down to Artifacts! |
Codecov Report❌ Patch coverage is ❌ Your patch check has failed because the patch coverage (66.00%) is below the target coverage (80.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## develop #5231 +/- ##
===========================================
+ Coverage 52.26% 52.67% +0.41%
===========================================
Files 745 745
Lines 25897 25819 -78
Branches 4235 4239 +4
===========================================
+ Hits 13534 13601 +67
+ Misses 11066 10897 -169
- Partials 1297 1321 +24
... and 1 file with indirect coverage changes Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
|
APKs built during tests are available here. Scroll down to Artifacts! |
New ADR(s) in this PR 📚:15. Replace logcat-process capture with direct diagnostic file loggingDate: 2026-09-02 StatusAccepted ContextThe previous Android diagnostic logger started a Application and Kalium diagnostics already flow through Kermit. Writing that stream directly to a The current app packages diagnostic files into a single ZIP archive. This established export DecisionThe app writes Kermit diagnostics directly to a rolling file and does not use a When direct file logging starts, the app migrates a legacy
ConsequencesDiagnostic logging no longer depends on an OEM's logcat process behavior, so files contain the The direct approach records only logs routed through Kermit; it intentionally does not capture |
|
APKs built during tests are available here. Scroll down to Artifacts! |
https://wearezeta.atlassian.net/browse/WPB-26806
PR Submission Checklist for internal contributors
The PR Title
SQPIT-764The PR Description
What's new in this PR?
Issues
Some devices produces zero bytes logs due to vendor oem restrictions.
Causes (Optional)
The current implementation of our file logger relies on spinning off a process that runs logcat and attaches this output to a file log.
Solutions
While in the past we dealt with this issue, since it was blocking the app startup, now this enables logs on them as well by using kermit-io and it's RollingFileWritter made for this purpose.
Dependencies (Optional)
We need to stick to version 2.0.5 given a datetime constraint coming from kalium, which creates conflict resolution if upgrade to latest 2.1.0
PR Post Submission Checklist for internal contributors (Optional)
PR Post Merge Checklist for internal contributors
References
feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.